![]() |
RESOLUCIÓN No. 12800 Especificaciones Técnicas |
![]() |
Movimiento
en cuenta corriente y/o ahorro
Formato 1019 - Versión 6
Año
gravable 2006
OBJETIVO
Definir las
características y contenido de los archivos donde se reporta el Movimiento en
cuentas corriente y/o ahorro.
ESPECIFICACIÓN
TECNICA
El formato de
Movimiento en cuentas corriente y/o ahorro, debe enviarse en un archivo XML que
cumpla las siguientes especificaciones:
1. Estándar del Nombre de los Archivos
El nombre de cada uno
de los archivos, debe especificarse mediante la siguiente secuencia de
caracteres:
Dmuisca_ccmmmmmvvaaaacccccccc.xml
cc : Concepto
(Inserción = 01 Reemplazo = 02)
mmmmm : Formato (Movimiento en
cuenta corriente y/o ahorro = 01019)
vv : Versión del
formato (Versión = 06).
aaaa : Año de envío.
cccccccc : Consecutivo de envío por
año.
2. Formato del
Archivo
El formato de
Movimiento en cuentas corriente y/o ahorro, contiene un documento XML, que está
compuesto por dos elementos complejos: Encabezado y Contenido, las cuales se
deben enviar en el orden enunciado.
Encabezado |
Contenido Información 1 |
Contenido Información 2 |
... |
Contenido Información N |
1. El documento XML debe cumplir con la
especificación 1.0 Tercera edición.
2. El conjunto de caracteres utilizado en el
documento XML debe ser el alfabeto latino No. 1: “ISO-8859-
3. El archivo debe contener un documento XML bien
formado y valido de acuerdo al esquema XSD que incluye en esta especificación
técnica.
4. El archivo debe contener un elemento único
elemento raíz llamado “mas”, que a su vez contendrá toda la información del
archivo, tanto el encabezado como los registros.
2.1.
Formato
del Encabezado
El encabezado del
archivo viene en el elemento “Cab” y contiene los siguientes datos, todos de
carácter obligatorio:
ETIQUETA |
DENOMINACION CASILLA |
TIPO |
LONGITUD CAMPO |
VALIDACIONES |
OBSERVACIONES |
Ano |
Año de envío |
Int |
4 |
|
Formato AAAA |
CodCpt |
Concepto |
Int |
2 |
|
1 = Inserción |
Formato |
Código del formato |
Int |
5 |
|
Movimiento en cuenta
corriente y/o ahorro = 1019 |
Versión |
Versión del formato |
Int |
2 |
|
Versión = 6 |
NumEnvio |
Número de envío |
Int |
8 |
Debe ser un
número consecutivo por año para todos los formatos que el remitente envíe a
la DIAN |
Consecutivo de envío
por año. |
FecEnvio |
Fecha de envío |
DateTime |
19 |
Debe ser la fecha
calendario. |
Formato
AAAA-MM-DDTHH:MM:SS |
FecInicial |
Fecha Inicial |
Date |
10 |
Debe ser la fecha
calendario. |
Los registros
corresponden mínimo ésta fecha inicial. Formato AAAA-MM-DD |
FecFinal |
Fecha Final |
Date |
10 |
Debe ser la fecha
calendario. |
Los registros corresponden máximo a ésta fecha inicial.
Formato AAAA-MM-DD |
ValorTotal |
Valor Total |
double |
20 |
Corresponde a la sumatoria de
la casilla “mov” (Total movimento en cuentas ctes y/o ahorro) de los registros reportados. |
|
CantReg |
Cantidad de registros |
Int |
4 |
Se enviarán archivos
con máximo 5000 registros; si se deben reportar más de 5000 registros se
fraccionara la información en archivos de 5000 registros o menos. |
Cantidad de registros
reportados en el contenido. |
(*) Se enviarán archivos con máximo 5000
registros; si es necesario informar más de 5000 registros, se fraccionará la
información en archivos de 5000 registros o menos.
2.3. Formato del
Contenido
En el contenido del
archivo se deben incluir tantos registros como se informó en la cabecera en el
campo “Cantidad de registros”.
Cada registro
reportado debe mantener la misma estructura previamente explicada y usada para
la cabecera.
El contenido del
archivo viene en el elemento “movcta” y se deben incluir los siguientes datos
para cada transacción reportada.
ATRIBUTO |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
CRITERIOS |
tdoc |
Tipo de Documento |
int |
2 |
Siempre
debe informarse. |
nid |
Número
de Identificación |
string |
20 |
Siempre debe informarse. |
dv |
Digito de Verificación |
int |
1 |
Si se conoce debe
informarse. |
apl1 |
Primer Apellido del
titular |
string |
60 |
En el caso de ser una
Persona Natural siempre debe informarse. |
apl2 |
Segundo Apellido del
Titular |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
nom1 |
Primer Nombre del
Titular |
string |
60 |
En el caso de ser una Persona Natural siempre
debe informarse. |
nom2 |
Otros Nombres del
Titular |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
raz |
Razón Social Titular |
string |
450 |
En el caso de ser una Persona Jurídica
siempre debe informarse. |
dir |
Dirección |
string |
200 |
Siempre debe
informarse. |
dpto |
Código del
Departamento |
int |
2 |
Siempre debe
informarse. |
mun |
Código del Municipio |
int |
3 |
Siempre debe
informarse. |
mov |
Total movimiento en
cuentas Corrientes y/o Ahorro |
double |
20 |
Siempre debe informarse. |
cta |
Número de Cuenta |
double |
20 |
Siempre debe informarse. |
ntitsec |
Número de titulares
secundarios y/o firmas autorizadas |
int |
3 |
Siempre debe informarse. |
tipcta |
Tipo de cuenta |
int |
1 |
Siempre
debe informarse. |
Los campos Tipo de Documento, Número de Identificación y
Número de Cuenta, conforman una llave única para este formato, la cual no debe
repetirse para los registros de un mismo envío.
A este elemento principal se pueden agregar elementos
secundarios identificados como “titSec”, los cuales contienen Información de
titulares secundarios y/o firmas autorizadas para cuentas corrientes y/o cuentas de ahorro.
ATRIBUTO |
DENOMINACION CASILLA |
TIPO |
LONGITUD |
CRITERIOS |
tdoc |
Tipo de Documento del
Titular Secundario |
int |
2 |
Siempre
debe informarse. |
nidsec |
Número de Identificación del secundario |
String |
20 |
Siempre debe
informarse. |
dv |
Digito de Verificación
del Titular Secundario |
int |
1 |
Si se conoce debe
informarse. |
apl1 |
Primer Apellido del
Titular Secundario |
string |
60 |
En el caso de ser una
Persona Natural siempre debe informarse. |
apl2 |
Segundo Apellido del
Titular Secundario |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
nom1 |
Primer Nombre del
Titular Secundario |
string |
60 |
En el caso de ser una Persona Natural siempre
debe informarse. |
nom2 |
Otros Nombres del
Titular Secundario |
string |
60 |
En el caso de ser una Persona Natural y si se
conoce debe informarse. |
raz |
Razón social del
Titular Secundario |
string |
450 |
En el caso de ser una Persona Jurídica
siempre debe informarse. |
Los campos Tipo de
Documento del Titular Secundario y Número de Identificación del secundario,
conforman la llave única para el elemento “titSec” y no se debe repetir para
este tipo de elementos en cada registro.
3. Validaciones
3.1. Validaciones
Generales
3.2. Validaciones
del Encabezado
1. Los campos concepto, formato y versión,
deben venir diligenciados con los valores estipulados en las especificaciones
técnicas,
2. Año de envío, debe ser el año calendario.
3. Numero de envío, debe ser un número consecutivo por año para todos los
formatos que el remitente envíe a
4. Fecha de envío, debe ser la fecha calendario, en formato AAAA-MM-DDTHH:MM:SS.
5. Cantidad de registros, debe ser igual a la cantidad de registros
reportadas en el contenido, que como máximo puede ser 5000 registros.
6. Valor total, corresponde a la
sumatoria de la casilla “mov” (Total movimiento en cuentas ctes y/o ahorro) de los registros reportados.
4. Esquema XSD
A continuación se incluye el esquema XSD para esta especificación
técnica.
<?xml version="1.0"
encoding="ISO-8859-1"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element
name="movcta">
<xs:annotation>
<xs:documentation>Elemento
que encapsula la información del formulario 1019 Movimientos de cuenta
corriente y/o ahorro</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element
ref="titSec" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute
name="tdoc" use="required">
<xs:annotation>
<xs:documentation>Tipo
de documento</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="nid" use="required">
<xs:annotation>
<xs:documentation>Número
de Identificación</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="dv" use="optional">
<xs:annotation>
<xs:documentation>Dígito
de verificación</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="9"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="apl1" use="optional">
<xs:annotation>
<xs:documentation>Primer
Apellido del Titular</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="apl2" use="optional">
<xs:annotation>
<xs:documentation>Segundo
Apellido del
Titular</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="nom1" use="optional">
<xs:annotation>
<xs:documentation>Primer
Nombre del
Titular</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="nom2" use="optional">
<xs:annotation>
<xs:documentation>Segundo
Nombre del
Titular</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="raz" use="optional">
<xs:annotation>
<xs:documentation>Razón
Social Titular</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="450"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="dir" use="required">
<xs:annotation>
<xs:documentation>Dirección</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="1"/>
<xs:maxLength
value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="dpto" use="required">
<xs:annotation>
<xs:documentation>Código
Dpto</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="mun" use="required">
<xs:annotation>
<xs:documentation>Código
Municipio</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="999"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="mov" use="required">
<xs:annotation>
<xs:documentation>Total
movimento en cuentas ctes y/o ahorro</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:double">
<xs:pattern
value="[0-9]{1,20}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="cta" use="required">
<xs:annotation>
<xs:documentation>Número
de cuenta</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:double">
<xs:pattern
value="[0-9]{1,20}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="ntitsec" use="required">
<xs:annotation>
<xs:documentation>Número
de Titulares secundarios y/o firmas autorizadas</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="999"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="tipcta" use="required">
<xs:annotation>
<xs:documentation>Tipo
de cuenta</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="9"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element
name="mas">
<xs:annotation>
<xs:documentation>Elemento
raiz del xml de carga masiva</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element
name="Cab" type="CabType"/>
<xs:element
ref="movcta" maxOccurs="5000"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element
name="titSec">
<xs:annotation>
<xs:documentation>Elemento
que contienen la información de los titulares
secundarios.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute
name="tdoc" use="required">
<xs:annotation>
<xs:documentation>Tipo
de documento</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="nidsec" use="required">
<xs:annotation>
<xs:documentation>Número
de Identificación titular secundario</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="dv" use="optional">
<xs:annotation>
<xs:documentation>Dígito
de verificación</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="9"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="apl1" use="optional">
<xs:annotation>
<xs:documentation>Primer
Apellido del Titular secundario</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="apl2" use="optional">
<xs:annotation>
<xs:documentation>Segundo
Apellido del Titular
secundario</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="nom1" use="optional">
<xs:annotation>
<xs:documentation>Primer
Nombre del Titular
secundario</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="nom2" use="optional">
<xs:annotation>
<xs:documentation>Segundo
Nombre del Titular secundario</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute
name="raz" use="optional">
<xs:annotation>
<xs:documentation>Razón
Social Titular
Secundario</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:minLength
value="0"/>
<xs:maxLength
value="450"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:complexType
name="CabType">
<xs:sequence>
<xs:element
name="Ano" type="xs:gYear" nillable="false">
<xs:annotation>
<xs:documentation>Año
de envio</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element
name="CodCpt" nillable="false">
<xs:annotation>
<xs:documentation>Concepto</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:int">
<xs:minInclusive
value="0"/>
<xs:maxInclusive
value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Formato" fixed="1019">
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:totalDigits
value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element
name="Version" type="xs:positiveInteger"
fixed="6"/>
<xs:element
name="NumEnvio">
<xs:annotation>
<xs:documentation>Numero
de envio</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:positiveInteger">
<xs:totalDigits
value="8"/>
<xs:maxInclusive
value="99999999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FecEnvio"
type="xs:dateTime">
<xs:annotation>
<xs:documentation>Fecha
de envio</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element
name="FecInicial" type="xs:date">
<xs:annotation>
<xs:documentation>Fecha
inicial</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element
name="FecFinal" type="xs:date">
<xs:annotation>
<xs:documentation>Fecha
Final</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element
name="ValorTotal" type="xs:double">
<xs:annotation>
<xs:documentation>Valor
Total</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element
name="CantReg">
<xs:annotation>
<xs:documentation>Cantidad
de registros</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction
base="xs:positiveInteger">
<xs:totalDigits
value="4"/>
<xs:maxInclusive
value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>